package com.oa.dao;

import com.oa.common.base.Page;
import com.oa.common.base.Pageable;
import com.oa.entities.Department;

import java.util.List;

public interface DepartmentDao extends BaseDao<Long,Department> {

    /**
     *
     * @return
     */
    List<Department> findParent();

    /**
     * 校验部门是否存在
     *
     * @param name
     * 部门的名称
     *
     * @param id
     * 部门的id
     *
     * @return
     */
    Boolean validate(String name,Long id);

    /**
     * 根据父级的id查询部门
     *
     * @param id
     * 部门的id
     *
     * @return
     */
    List<Department> findByParentId(Long id);

    Page<Department> findPage(Pageable pageable, String key);
}
